﻿#pragma once

#ifndef RELEASE_ARRAY
#define RELEASE_ARRAY
//为了扭曲的实现两个智能指针同时指向一个区域，而且其中一个智能指针所指内存区域不断变化，另一个智能指针指向区域不变的
//情况，我们需要那个指向的内存经常变化的智能指针的析构什么也不做
template <typename T>
void releaseArraysDoNothing(T const *p)
{

}

//定义一个数组的内存释放函数模板，用来辅助shared_ptr
template <typename T>
void releaseArrays(T* p)
{
	if (NULL == p || nullptr == p)
	{
		return;
	}
	delete[]	p;
	p = NULL;
	//TODO;
}
#endif